﻿using System;
using System.ComponentModel;

using uTube.Core.DataTypes.PrevalueEditors;
using uTube.Core.Properties;

namespace uTube.Core.DataTypes.YouTubeVideoPicker
{
	/// <summary>
	/// Options for the YouTube Video Picker.
	/// </summary>
	public class YTVP_Options : AbstractOptions
	{
		/// <summary>
		/// Initializes a new instance of the <see cref="YTVP_Options"/> class.
		/// </summary>
		public YTVP_Options()
			: base()
		{
		}

		/// <summary>
		/// Initializes a new instance of the <see cref="YTVP_Options"/> class.
		/// </summary>
		/// <param name="loadDefaults">if set to <c>true</c> [load defaults].</param>
		public YTVP_Options(bool loadDefaults)
			: base(loadDefaults)
		{
		}

		/// <summary>
		/// Gets or sets the maximum number of videos to retrieve.
		/// </summary>
		/// <value>The number of maximum videos.</value>
		[DefaultValue(20)]
		public int MaxVideos { get; set; }

		/// <summary>
		/// Gets or sets the query.
		/// </summary>
		/// <value>The query.</value>
		[DefaultValue("")]
		public string Query { get; set; }

		/// <summary>
		/// Gets or sets the safe search.
		/// </summary>
		/// <value>The safe search.</value>
		[DefaultValue(1)]
		public int SafeSearch { get; set; }
	}
}
